Debug = {}

Debug.Log = function(msg, ...)
    msg = formatCSharp(msg, ...)
    C_Debug.Log(msg)
end

Debug.LogWarning = function(msg, ...)
    msg = formatCSharp(msg, ...)
    C_Debug.LogWarning(msg)
end

Debug.LogError = function(msg, ...)
    msg = formatCSharp(msg, ...)
    C_Debug.LogError(msg)
end

Debug.LogDump = function(data)
    local msg = L_json.encode(data)
    C_Debug.Log(msg)
end

---print统一调用
---@public string C#风格的字符串格式化
function formatCSharp(msg, ...)
    local args = { ... }
    for k, v in ipairs(args) do
        msg = string.gsub(msg, "{" .. (k - 1) .. "}", tostring(v))
    end
    return msg
end
